class_name ItemBaseConfig
extends Resource
 

enum ItemType{
	Consumable, MeleeWeapon, Spell, Gold, Exp, Light, Equipment, Card, Gun, LightBag, Magic, RandomTransferScroll, Key, Item
}

enum HandHoldType{
	Normal, GunHold
}

@export_category("Equipment")
@export var equip_back: bool = false

@export_category("Base")
@export var hand_hold_type: HandHoldType = HandHoldType.Normal
@export var item_type: ItemType = ItemType.MeleeWeapon
@export var stackable: bool = false
@export var name: String = ""
@export var icon_name: String = ""
@export var hold_item_resource_name: String = ""
@export var item_use_cooldown_time: float = 1
@export var drop_item_name: String = ""
@export var off_hand_hold_item_resource_name: String = ""
@export var item_desc: String = ""
@export var can_drop: bool = true

# attack
@export_category("Attack")
@export var attack: float = 0
@export var critical_rate: float = 0
@export var critical_bonus: float = 0
@export var knockback: float = 0
@export var attack_cam_shake: bool = false
@export var attack_cam_shake_intensity: float = 3.0
@export var attack_cam_shake_duration: float = 0.1
@export var attack_range: float = 100
@export var affect_vertical_velocity: float = 0

@export_category("Defense")
@export var equip_defense: float = 0

@export_category("AddAttack")
@export var add_attack: int = 0

@export_category("AddExp")
@export var add_exp: int = 0

@export_category("Heal")
@export var heal_point: int = 0

# add life
@export_category("AddLife")
@export var add_life: int = 0

# add jump_speed
@export_category("AddJumpSpeed")
@export var add_jump_speed: int = 0

# add speed
@export_category("AddSpeed")
@export var add_speed: int = 0

# anti search
@export_category("AntiSearch")
@export var anti_search: float = 0

# poison
@export_category("Poison")
@export var poison_hit_rate: float = 0
@export var poison_damage_per_second: float = 0
@export var poison_debuff_duration: float = 0

# flame
@export_category("Flame")
@export var flame_debuff_hit_rate: float = 0
@export var flame_damage_per_second: float = 0
@export var flame_debuff_duration: float = 0

# blood
@export_category("Blood")
@export var blood_hit_rate: float = 0
@export var blood_hit_damage_percent: float = 0

# steal hp
@export_category("StealHealth")
@export var steal_hp_rate: float = 0  

# drains holder health
@export_category("DrainsHolderHealth")
@export var drains_holder_health_damage_per_second: float = 0

@export_category("Shoot")
@export var shoot_start_speed: float = 0
@export var shoot_max_distance: float = 0

@export_category("Numb")
@export var numb_hit_rate: float = 0
@export var numb_speed_scale: float = 0
@export var numb_duration: float = 0

@export_category("Frozen")
@export var frozen_hit_rate: float = 0
@export var frozen_speed_scale: float = 0
@export var frozen_duration: float = 0

@export_category("ReturnAttack")
@export var return_attack_rate: float = 0
@export var return_knockback: float = 0
